A Heap-Based Concurrent Priority Queue with Mutable Priorities for Faster Parallel Algorithms
نویسندگان
چکیده
Existing concurrent priority queues do not allow to update the priority of an element after its insertion. As a result, algorithms that need this functionality, such as Dijkstra’s single source shortest path algorithm, resort to cumbersome and inefficient workarounds. We report on a heap-based concurrent priority queue which allows to change the priority of an element after its insertion. We show that the enriched interface allows to express Dijkstra’s algorithm in a more natural way, and that its implementation, using our concurrent priority queue, outperform existing algorithms. 1998 ACM Subject Classification D.1.3 [Programming Techniques]:Concurrent Programming
منابع مشابه
Skiplist-Based Concurrent Priority Queues
This paper addresses the problem of designing scalable concurrent priority queues for large scale multiprocessors – machines with up to several hundred processors. Priority queues are fundamental in the design of modern multiprocessor algorithms, with many classical applications ranging from numerical algorithms through discrete event simulation and expert systems. While highly scalable approac...
متن کاملConcurrent Access of Priority Queues
The heap is an important data structure used as a priority queue in a wide variety of parallel algorithms (e.g., multiprocessor scheduling, branch-and-bound). In these algorithms, contention for the shared heap limits the obtainable speedup. This paper presents an approach to allow concurrent insertions and deletions on the heap in a shared-memory multiprocessor. The scheme also retains the str...
متن کاملParallel heap: A practical priority queue for fine-to-medium-grained applications on small multiprocessors
We present an eficient implementation of the parallel heap data structure on a bus-based Silicon Graphics multiprocessor GTX/dD. Parallel heap is theoretically the first heap-based data structure to have implemented an optimally scalable parallel priority queue on an exclusive-read exclusive-write parallel random access machine. We compared it with Rao-and-Kumar’s concurrent heap and with the c...
متن کاملParallel Algorithms for Priority Queue Operations
This paper presents parallel algorithms for priority queue operations on a p-processor EREW-PRAM. The algorithms are based on a new data structure, the Min-path Heap (MH), which is obtained as an extension of the traditional binary-heap organization. Using an MH, it is shown that insertion of a new item or deletion of the smallest item from a priority queue of n elements can be performed in O(l...
متن کاملAn E cient Algorithm for Concurrent Priority
We present a new algorithm for concurrent access to array-based priority queue heaps. Deletions proceed top-down as they do in a previous algorithm due to Rao and Kumar 6], but insertions proceed bottom-up, and consecutive insertions use a bit-reversal technique to scatter accesses across the fringe of the tree, to reduce contention. Because insertions do not have to traverse the entire height ...
متن کامل